package org.ytor.core.sysapi.file.model;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ytor.common.util.bean.Beans;
import org.ytor.core.sqlflow.PersistenceModel;
import org.ytor.core.sysapi.file.resp.SysFileResp;

/**
 * 上次到文件服务器的文件信息
 * Created by yt on 2024/4/9 21:33
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class SysFile extends PersistenceModel<SysFile, String> {
    /**
     * 文件id，全局唯一，根据该id可以找到一个唯一对应的文件
     */
    private String fileId;

    /**
     * 原始文件名称
     */
    private String fileName;

    /**
     * 文件大小，单位字节
     */
    private Long fileSize;

    /**
     * 文件大小
     */
    private String fileSizeText;

    /**
     * 文件类型
     */
    private String fileType;

    /**
     * 下载次数
     */
    private Integer downloadCount;

    @Override
    public SysFileResp toResp() {
        SysFileResp sysFileResp = Beans.copyProperties(this, SysFileResp.class);
        sysFileResp.setId(this.getId());
        return sysFileResp;
    }
}
